//    Copyright (C) 2013  <lugocreation@gmail.com>
//
//    This program is free software: you can redistribute it and/or modify
//    it under the terms of the GNU General Public License as published by
//    the Free Software Foundation, either version 3 of the License, or
//    (at your option) any later version.
//
//    This program is distributed in the hope that it will be useful,
//    but WITHOUT ANY WARRANTY; without even the implied warranty of
//    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
//    GNU General Public License for more details.
//
//    You should have received a copy of the GNU General Public License
//    along with this program.  If not, see <http://www.gnu.org/licenses/>.
package org.jpgolay.gui.fixed;

import java.awt.*;
import javax.swing.JLabel;
import javax.swing.JPanel;

public class LabelAndLabel extends JPanel {

    public LabelAndLabel() {
        leftJLabel = null;
        rightJLabel = null;
        jPanel = null;
        initialize();
    }

    private void initialize() {
        setLayout(new BorderLayout());
        setSize(306, 27);
        add(getJPanel(), "Center");
    }

    private JPanel getJPanel() {
        if (jPanel == null) {
            jPanel = new JPanel();
            FlowLayout flowLayout = new FlowLayout();
            jPanel.setLayout(flowLayout);
            flowLayout.setHgap(2);
            flowLayout.setVgap(2);
            jPanel.add(getLeftJLabel(), null);
            jPanel.add(getRightJLabel(), null);
        }
        return jPanel;
    }

    private JLabel getLeftJLabel() {
        if (leftJLabel == null) {
            leftJLabel = new JLabel();
            leftJLabel.setText("N/A");
            leftJLabel.setPreferredSize(new Dimension(250, 23));
        }
        return leftJLabel;
    }

    private JLabel getRightJLabel() {
        if (rightJLabel == null) {
            rightJLabel = new JLabel();
            rightJLabel.setText("N/A");
            rightJLabel.setPreferredSize(new Dimension(50, 23));
            rightJLabel.setHorizontalAlignment(4);
        }
        return rightJLabel;
    }

    public void setLabelLeft(String label) {
        getLeftJLabel().setText(label);
    }

    public String getLabelLeft() {
        return getLeftJLabel().getText();
    }

    public void setLabelRight(String label) {
        getRightJLabel().setText(label);
    }

    public String getLabelRight() {
        return getRightJLabel().getText();
    }
    private JLabel leftJLabel;
    private JLabel rightJLabel;
    private JPanel jPanel;
}
